home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / xsw / include / xsw.h < prev    next >
C/C++ Source or Header  |  1995-05-09  |  19KB  |  895 lines

  1. /*
  2.  *    @(#) xsw.h 12.1 95/05/09 SCOINC
  3.  */
  4. /***************************************************************************
  5.  *
  6.  *    Copyright (c) 1990-1993        The Santa Cruz Operation, Inc.
  7.  *
  8.  *    All rights reserved.  No part of this program or publication may be
  9.  *    reproduced, transmitted, transcribed, stored in a retrieval system,
  10.  *    or translated into any language or computer language, in any form or
  11.  *    by any means, electronic, mechanical, magnetic, optical, chemical,
  12.  *    biological, or otherwise, without the prior written permission of:
  13.  *
  14.  *        The Santa Cruz Operation , Inc.        (408) 425-7222
  15.  *        400 Encinal St., Santa Cruz, California 95060 USA
  16.  *
  17.  **************************************************************************/
  18. /*
  19.  * Modification History
  20.  *
  21.  * S004, 25-Oct-93, rickra
  22.  *      Added 32v5 streams.....stuff
  23.  *
  24.  * S003, 25-Oct-93, rickra
  25.  *      Removed double semicolons on four variables
  26.  *
  27.  * S002, 21-Sep-93, rickra
  28.  *      Added disk space stuff... 
  29.  *
  30.  * S001, 27-May-93, rickra
  31.  *      Added support for seperate windows.......
  32.  *
  33.  * S000, 30-Sep-92, rickra
  34.  *      Added copyright and modification history
  35.  */
  36.  
  37. #include "include/xswclient.h"
  38.  
  39.  
  40. /* borrowed code from u386mon needs this and it may be ported someday */
  41. #if defined(M_UNIX)
  42. #define SVR32
  43. #define HAS_FTIME
  44. #define USIZE_FIXED
  45. #endif
  46.  
  47. char *getenv ();
  48. char *strchr ();
  49. char *strrchr ();
  50. /*
  51. #ifdef __STDC__
  52. void *malloc();
  53. #else
  54. char *malloc();
  55. #endif
  56. */
  57.  
  58. #define DRAWING_WINDOW 0
  59. #define SCROLLED_WINDOW 1
  60.  
  61. typedef struct _window_init_struct{
  62.   int        Drawing_Width;
  63.   int        Drawing_Height;
  64.  
  65. } window_init_struct;
  66.  
  67. typedef struct DestroyCallbackStruct
  68. {
  69.  
  70.   caddr_t server_pointer;
  71.   int button;
  72.   Atom WM_DELETE_WINDOW;
  73.  
  74. } DestroyCallbackClientData;
  75.  
  76.  
  77. typedef struct
  78. {
  79.   int button_num;
  80.   int Y_offset;
  81.   int Y_length;
  82. } DISPLAY_STRUCT;
  83.  
  84. typedef struct
  85. {
  86.   Widget temp_widget;
  87.   Widget temp_drawing_area;
  88.   Widget temp_main_window_widget;
  89.   Display *temp_display;
  90.   Window temp_window;
  91.   int temp_screen;
  92.   GC temp_gc;
  93. } POPUP_STRUCT;
  94.  
  95.  
  96. typedef struct
  97. {
  98.   int on;
  99.   int Y_mult;            /* This is the multiplier value */
  100.   POPUP_STRUCT popup;
  101. } COMMAND_STRUCT;
  102.  
  103.  
  104. typedef struct colorHelpStruct 
  105. {
  106.  
  107. Widget          drawing_area;
  108. Widget          main_window_widget;
  109. Widget          toplevel;
  110. Display        *display;
  111. Window          window;
  112. int             screen;
  113. GC              gc;
  114.  
  115.  
  116. } COLOR_HELP_STRUCT_DATA;
  117.  
  118.  
  119. typedef struct
  120. {
  121.   Widget shell_widget;
  122.   Widget main_window_widget;
  123.   Widget paned_w;    
  124.  
  125.   Widget DrawAreaW;        /* For those window who need a drawing area */
  126.  
  127. /* 
  128.  * For those windows who want a scrolled window... 
  129.  */
  130.  
  131.   Widget form_w;    
  132.   Widget title_label;
  133.  
  134. /*
  135.  * "multi-view" stuff......
  136.  */
  137.  
  138.   Widget menu_bar;            /* The menu bar widget         */
  139.   Widget pull_down_menu_widget;        /* The pull down menu widget */
  140.   Widget view_toggle_widget;        /* The view Cascade button   */
  141.   Widget *screen_widget_list;        /* list of view push button widgets */
  142.  
  143.   Widget *view_current_sort_widget;    /* current sort widget for each view  */
  144.   int    *view_sort_mode;        /* current sort mode for each view */
  145.   Widget *toggle_widget;             /* all widgets for all screens.... */
  146.  
  147.   int    current_screen_mode;        /* The current screen */
  148.  
  149. /*
  150.  * "options" stuff......
  151.  */
  152.  
  153.   Widget option_menu_bar;        /* The menu bar widget         */
  154.   Widget option_pull_down_menu_widget;    /* The pull down menu widget */
  155.   Widget option_view_toggle_widget;    /* The view Cascade button   */
  156.   Widget *option_screen_widget_list;    /* list of option push button widgets */
  157.  
  158.  
  159.  
  160. #ifdef OLD_WAY
  161.   char   *current_screen;         /* Pointer to ps_menu_struct */
  162.   int    current_screen_number;     /* number of entries of 
  163.                        ps_menu_struct */
  164.  
  165.   Widget *current_view;            /* current view */
  166.  
  167. /*
  168.   Widget  ps_mem_widget_list [3][14];
  169. */
  170.  
  171.   Widget *toggle_widget_screen_2;     /* view 2 ..... */
  172.   Widget *toggle_widget_screen_3;     /* view 3 ..... */
  173.   Widget *toggle_widget_screen_4;     /* view 4 ..... */
  174.  
  175. #endif
  176.  
  177. /**********/
  178.  
  179.  
  180.   Widget vsb;         /* Vertical scroll bar */
  181.   Widget hsb;         /* Horizontal scroll bar */
  182.  
  183.   int     window_type;
  184.  
  185.   Pixmap pixmap;
  186.  
  187. /*
  188.  * Size of top-level shell
  189.  */
  190.   int    width,height;
  191.   int    max_width,max_height;
  192.   int    min_width,min_height;
  193.   int   x1,y1;
  194.  
  195. /*
  196.  * Size of drawing area....
  197.  */
  198.  
  199.   int    draw_width,draw_height;
  200.  
  201. /* Current size of pixmap */
  202.  
  203.   int  pixmap_cur_width; 
  204.   int  pixmap_cur_height; 
  205.  
  206.  
  207. /*
  208.  * Geometry sizes according to querying of the resource database... 
  209.  */
  210.  
  211.   char        *class_name;
  212.   int    GeometryQueryResults;
  213.   int     GeometryWidth,GeometryHeight;
  214.  
  215.   Window window;
  216.   int screen;
  217.   Display *display;
  218.   XWindowAttributes DrawAreaXYWH;
  219.   GC gc;
  220.   DestroyCallbackClientData *destroy_client_data_pointer;
  221.   int Y_mult;
  222.   int first_expose;
  223.   int already_created;
  224.   int help_color_already_created;
  225.   struct colorHelpStruct colorHelp;
  226.   int x, y;            /* position before it is unrealized */
  227.  
  228. } SEPERATE_WINDOWS_STRUCT;
  229.  
  230.  
  231. #define CPU_AVG_MAX        10
  232. #define WAIT_AVG_MAX        10
  233.  
  234.  
  235. typedef struct NetworkXswStruct
  236. {
  237.  
  238.   /*
  239.    * Forward and backword links for servers
  240.    */
  241.  
  242.   struct NetworkXswStruct *forward_link;
  243.   struct NetworkXswStruct *backward_link;
  244.  
  245.   /*
  246.    * Server name
  247.    */
  248.  
  249.   char *server_name;
  250.  
  251.   /*
  252.    * Socket descriptor
  253.    */
  254.  
  255.   int FileDescriptor;
  256.   int connected;
  257.   /*
  258.    * Timer interval id for sampling timer....
  259.    */
  260.  
  261.   XtIntervalId timer_id;
  262.  
  263.   /*
  264.    * Sampling time cycle wanted and actual time period
  265.    */
  266.  
  267.   unsigned long StatCycle_msec;
  268.   long StatPeriod_msec;
  269.  
  270.   int user_data_pointer;
  271.  
  272.   /*
  273.    * Message line....
  274.    */
  275.  
  276.  
  277.   char *message;
  278.  
  279.   /*
  280.    * Fonts structure.....
  281.    */
  282.  
  283.   XFontStruct *test_fonts;
  284.   int          current_font;
  285.   Font            My_font;
  286.   char           *font_name;
  287.   int             have_res_font;
  288.   int             font_change;
  289.  
  290.   /*
  291.    * Time that kernel data was obtained  and
  292.    * Last time that kernel data was obtained
  293.    */
  294.  
  295.   struct timeb timeb_info_read;
  296.   struct timeb timeb_last_info_read;
  297.  
  298.   /*
  299.    * Window's control structures for managing all windows
  300.    */
  301.  
  302.   DISPLAY_STRUCT DISPLAY_LIST[Max_state_buttons];
  303.   COMMAND_STRUCT COMMAND_LIST[Max_state_buttons];
  304.   SEPERATE_WINDOWS_STRUCT SEPERATE_WINDOWS_LIST[Max_state_buttons];
  305.  
  306.   int current_items;
  307.  
  308.   int TOGGLE_BUTTONS_STATE[Max_state_buttons];
  309.  
  310.   int    scroll_bar_expose;
  311.  
  312.  
  313.   /*
  314.    * Hertz value....
  315.    */
  316.  
  317.   int hz;
  318.  
  319.   int PctScale_width;
  320.   int PctScale_xoffset;
  321.  
  322.   /*
  323.    * "Cpu" window variables....
  324.    */
  325.  
  326.   int cpu_avg_init;
  327.   time_t *cpu_avg[CPU_AVG_MAX];
  328.   time_t cpu_ticks[5];
  329.  
  330.   /*
  331.    * "Wait" window variables....
  332.    */
  333.  
  334.   int wait_avg_init;
  335.   time_t *wait_avg[WAIT_AVG_MAX];
  336.   time_t wait_ticks[5];
  337.  
  338.   /*
  339.    * "Cache" window variables....
  340.    */
  341.  
  342.   long initial_lwrite;
  343.   long initial_bwrite;
  344.   long initial_lread;
  345.   long initial_bread;
  346.  
  347.   long lwrite_cummulative;
  348.   long bwrite_cummulative;
  349.   long lread_cummulative;
  350.   long bread_cummulative;
  351.  
  352.   int avg_percent_write;
  353.   int avg_percent_read;
  354.  
  355.   /*
  356.    * "Other" window variables....
  357.    */
  358.  
  359.   int file_count;
  360.   int inode_count;
  361.   int proc_count;
  362.   int region_count;
  363.   int myclist;
  364.   int callout_count;
  365.   int mount_count;
  366.  
  367.   int file_max;
  368.   int inode_max;
  369.   int proc_max;
  370.   int region_max;
  371.   int myclist_max;
  372.   int callout_max;
  373.   int mount_max;
  374.  
  375.   /*
  376.    * "Disk Space" window variables...
  377.    */
  378.  
  379.   int     current_disk_space_entries;
  380.   int    max_disk_space_entries;
  381.   struct disk_space_struct *current_disk_space;
  382.   struct disk_space_struct *current_disk_space_bak;
  383.   int     current_disk_space_entries_bak;
  384.  
  385.   int    show_disk_totals;
  386.   int    show_nfs;
  387.  
  388.   /*
  389.    * "MEM" window variables....
  390.    */
  391.  
  392.   long cummulative_memory_used;
  393.   long cummulative_swap_used;
  394.   long cummulative_avail_swap;
  395.   int memory_sample_count;
  396.  
  397.   /*
  398.    * "Streams" window variables......
  399.    */
  400.  
  401.   int *mynmblock;
  402.  
  403.   struct strstat *mystreams;
  404.  
  405.   struct pagestat *pagest;
  406.  
  407.   ushort    *rbsize;
  408.   uint        *Rbsize;
  409.  
  410.   /*
  411.    * "Dev. Stats." window varaibles.....
  412.    */
  413.  
  414.   int got_scsi_disk_stats;
  415.   int got_scsi_tape_stats;
  416.   int got_scsi_rom_stats;
  417.   int got_esdi_disk_stats;
  418.   int got_wd_disk_stats;
  419.   int got_cart_tape_stats;
  420.   int got_floppy_disk_stats;
  421.  
  422.   int cur_device_displayed;
  423.   int max_device_displayed;
  424.  
  425.   struct iotime floppy_disk_stats[4];
  426.   struct iotime old_floppy_disk_stats[4];
  427.  
  428.   struct iotime Sdsk_stats[4];
  429.   struct iotime old_Sdsk_stats[4];
  430.  
  431.   struct iotime Stp_stats[4];
  432.   struct iotime old_Stp_stats[4];
  433.  
  434.   struct iotime Srom_stats[4];
  435.   struct iotime old_Srom_stats[4];
  436.  
  437.   struct iotime esdi_disk_stats[4];
  438.   struct iotime old_esdi_disk_stats[4];
  439.  
  440.   struct iotime wd_disk_stats[4];
  441.   struct iotime old_wd_disk_stats[4];
  442.  
  443.   struct iotime cart_tape_stats[4];
  444.   struct iotime old_cart_tape_stats[4];
  445.  
  446.  
  447.  
  448.   /*
  449.    * "PS CPU, PS I/O, and PS MEM" window variables....
  450.    */
  451.  
  452.   struct proc *real_procs;
  453.   struct proc *start_real_procs;
  454.  
  455.   struct my_user_struct *start_my_user;
  456.   struct my_user_struct *my_user;
  457.  
  458.   struct my_user_struct *old_my_user;
  459.  
  460.   struct my_proc_struct *start_procs;
  461.   struct my_proc_struct *procs;
  462.  
  463.   struct my_proc_struct *oldprocs;
  464.   struct my_proc_struct **poldprocs;
  465.   struct my_proc_struct **pprocs;
  466.  
  467.   int             procs_alive;
  468.   int             old_procs_alive;
  469.  
  470.   int          slots_in_use;
  471.   int          old_slots_in_use;
  472.  
  473.   int          max_slots_in_use;
  474.   int          old_max_slots_in_use;
  475.  
  476.   time_t          boot_time;
  477.  
  478.  
  479.   /*
  480.    * PS MEM info.....
  481.    */
  482.  
  483.   process_memory *heap_memory_pointer;
  484.   process_memory_bak *memory_pointer_bak;
  485.   int current_mem_procs;
  486.   int current_mem_procs_bak;
  487.   int num_active_process;
  488.  
  489.   int *new_memory_state;
  490.   int *memory_state;
  491.   int got_memory_state;
  492.  
  493.  
  494.   /*
  495.    * General stuff for PS......
  496.    */
  497.  
  498.   MyButton PS_MyButton_decl[PS_MyButton_QUAN];
  499.   MyButton IO_PS_MyButton_decl[IO_PS_MyButton_QUAN];
  500.   MyButton MEM_PS_MyButton_decl[MEM_PS_MyButton_QUAN];
  501.  
  502.   int nprocs;
  503.   int noldprocs;
  504.  
  505.   /*
  506.    * "NFS Stats." window variables....
  507.    */
  508.  
  509.   int nfs_available;
  510.   int must_be_32v5;
  511.  
  512.   struct
  513.   {
  514.     int rccalls;
  515.     int rcbadcalls;
  516.     int rcretrans;
  517.     int rcbadxids;
  518.     int rctimeouts;
  519.     int rcwaits;
  520.     int rcnewcreds;
  521.     int rcpeekerrs;
  522.     int rcbadresponses;
  523.   } rcstat;
  524.  
  525.   struct
  526.   {
  527.     int nclsleeps;
  528.     int nclgets;
  529.     int ncalls;
  530.     int nbadcalls;
  531.     int reqs[32];
  532.   } clstat;
  533.  
  534.   struct
  535.   {
  536.     int rscalls;
  537.     int rsbadcalls;
  538.     int rsnullrecv;
  539.     int rsbadlen;
  540.     int rsxdrcall;
  541.   } rsstat;
  542.  
  543.   struct
  544.   {
  545.     int ncalls;
  546.     int nbadcalls;
  547.     int reqs[32];
  548.   } svstat;
  549.  
  550.  
  551.  
  552.  
  553.   struct sysinfo *my_sysinfo;
  554.   struct sysinfo *my_sysinfo_last;
  555.  
  556.   struct minfo *my_minfo;
  557.   struct minfo *my_minfo_last;
  558.  
  559.   int my_nswap;
  560.   int *my_maxmem;
  561.   int *my_freemem;
  562.   int *my_availsmem;
  563.  
  564.   /*
  565.    * "VBT" window variables....
  566.    */
  567.  
  568.   struct var *my_v;
  569.   struct tune *my_tune;
  570.   struct bootinfo *my_bootinfo;
  571.   char   bootstring[B_MAXSTRLEN];
  572.  
  573.   int    configuration_string_size;
  574.   char   *configuration_string;
  575.  
  576.  
  577.  
  578.   int send_data_count;
  579.   int first_server_read;
  580.   int made_contact;
  581.   int minimum_data;
  582.  
  583.  
  584.   /* Variables for first reading of sysinfo. Need for cache avg calculations */
  585.  
  586.  
  587.  
  588.   int ps_procs_to_display;
  589.  
  590.   int ps_cpu_sort_order;
  591.   int ps_io_sort_order;
  592.  
  593.   int ps_cpu_time_mode;
  594.  
  595.   int ps_sort_mode;
  596.   int ps_display_mode;
  597.  
  598.   int ps_io_sort_mode;
  599.   int ps_io_display_mode;
  600.   int ps_io_time_mode;
  601.  
  602.  
  603. /*
  604.  * PS MEM per screen/view stuff
  605.  */
  606.  
  607.   int ps_mem_sort_order;
  608.   int *ps_mem_sort_mode;
  609.   int ps_mem_screen_mode;
  610.  
  611.   int disk_space_sort_order;
  612.   int *disk_space_sort_mode;
  613.   int disk_space_screen_mode;
  614.  
  615. /****/
  616.  
  617.  
  618.   int ps_mem_display_mode;
  619.  
  620.  
  621.   int in_expose_callback;
  622.   int in_set_display_mode;
  623.  
  624.   int ps_button_change;
  625.   int ps_io_button_change;
  626.   int ps_mem_button_change;
  627.  
  628.   struct scoutsname scoutsname;
  629.   struct utsname memuts;
  630.   struct utsname sysuts;
  631.  
  632.   int    os_version;
  633.  
  634. } NetworkXsw;
  635.  
  636. extern struct NetworkXswStruct *current_server;
  637.  
  638. typedef struct expose_callback_struct
  639. {
  640.   struct NetworkXswStruct *server_pointer;
  641.   int             button_number;
  642. }               EXPOSE_CALLBACK_STRUCT;
  643.  
  644.  
  645. struct _window_init_struct window_init_data[Max_state_buttons];
  646.  
  647.  
  648.  
  649. #define StatCycle_msecDef 4000L
  650. #define StatCycle_msecMin 100L
  651. #define StatCycle_msecMax 60000L
  652.  
  653. #define min(a,b) (((a) > (b)) ? (b) : (a))
  654.  
  655. #define FASCENT        (current_server->test_fonts->ascent)
  656. #define DESCENT        (current_server->test_fonts->descent)
  657. #define FHEIGHT        (current_server->test_fonts->ascent + current_server->test_fonts->descent)
  658. #define FWIDTH        (current_server->test_fonts->min_bounds.width)
  659. #define CHEIGHT        (current_server->test_fonts->min_bounds.ascent + current_server->test_fonts->min_bounds.descent)
  660.  
  661. #define FGAP        (1)
  662.  
  663. #define BORDER_EXTRA_WIDTH    (FGAP)
  664.  
  665. #define SMALL_BOX_WIDTH        (FWIDTH * 80)
  666. #define SMALL_BOX_HEIGHT    (FHEIGHT * 5) + DESCENT
  667.  
  668. #define Start_Y_offset        (FHEIGHT * 3)
  669.  
  670.  
  671. #define Tod_WIDTH        (FWIDTH * 8)
  672. #define Tod_TLX            (DrawAreaXYWH.width - Tod_WIDTH - FGAP)
  673. #define Tod_TLY            (FHEIGHT * 0)
  674.  
  675. #define User_WIDTH        (FWIDTH * 9)
  676. #define User_TLX        (DrawAreaXYWH.width - User_WIDTH - FGAP)
  677. #define User_TLY        (FHEIGHT * 1)
  678.  
  679. #define Disp_msg_TLY        (FHEIGHT * 2)
  680.  
  681. #define StatPeriod_WIDTH    (FWIDTH * 20)
  682. #define StatPeriod_TLX        (Tod_TLX - StatPeriod_WIDTH - (FWIDTH * 2))
  683. #define StatPeriod_TLY        (FHEIGHT * 0)
  684.  
  685. #define StatCycle_WIDTH        (FWIDTH * 17)
  686. #define StatCycle_TLX        (StatPeriod_TLX - StatCycle_WIDTH - (FWIDTH * 2))
  687. #define StatCycle_TLY        (FHEIGHT * 0)
  688.  
  689.  
  690.  
  691. #define CpuScale_TLX    0
  692. #define CpuScale_TLY    (FHEIGHT * 3)
  693.  
  694. #define WaitScale_TLX    0
  695. #define WaitScale_TLY    (FHEIGHT * 7)
  696.  
  697. #define FilesScale_TLY    (FHEIGHT * 11)
  698. #define FilesScale_TLX    0
  699.  
  700. #define CacheScale_TLY    (FHEIGHT * 16)
  701. #define CacheScale_TLX    0
  702.  
  703. /* Sysinfo/Minfo per second area */
  704. #define Sysinfo_TLY        (FHEIGHT * 19)    /* absolute ... */
  705. #define Sysinfo_TLX        (FWIDTH * 0)    /* ... positions */
  706. #define Sysinfo1_TLX    (FWIDTH * 0)    /* offsets */
  707. #define Sysinfo2_TLX    (FWIDTH * 18)
  708. #define Sysinfo3_TLX    (FWIDTH * 35)
  709. #define Sysinfo4_TLX    (FWIDTH * 51)
  710. #define Sysinfo5_TLX    (FWIDTH * 66)
  711.  
  712. #define Nfsstat1_TLX    (FWIDTH * 0)    /* offsets */
  713. #define Nfsstat2_TLX    (FWIDTH * 9)    /* offsets */
  714. #define Nfsstat3_TLX    (FWIDTH * 18)
  715. #define Nfsstat4_TLX    (FWIDTH * 26)
  716. #define Nfsstat5_TLX    (FWIDTH * 35)
  717. #define Nfsstat6_TLX    (FWIDTH * 42)
  718. #define Nfsstat7_TLX    (FWIDTH * 52)
  719. /*
  720. #define Nfsstat8_TLX    (FWIDTH * 71)
  721. */
  722.  
  723. /* extra info area */
  724. #define EXTRA_TLY        (FHEIGHT * 34)    /* absolute ... */
  725. #define EXTRA_TLX        (FWIDTH * 0)    /* ... positions */
  726. #define EXTRA1_TLX        (FWIDTH * 0)    /* offsets */
  727. #define EXTRA2_TLX        (FWIDTH * 18)
  728. #define EXTRA3_TLX        (FWIDTH * 43)
  729. #define EXTRA4_TLX        (FWIDTH * 62)
  730.  
  731. #define Var_TLX            (EXTRA_TLX + EXTRA1_TLX)
  732. #define Var_TLY            EXTRA_TLY
  733.  
  734. #define Bootinfo_TLX    (EXTRA_TLX + EXTRA2_TLX)
  735. #define Bootinfo_TLY    EXTRA_TLY
  736.  
  737. #define Tune_TLX        (EXTRA_TLX + EXTRA3_TLX)
  738. #define Tune_TLY        EXTRA_TLY
  739.  
  740. #define Proc_TLX        (EXTRA_TLX + EXTRA4_TLX)
  741. #define Proc_TLY        EXTRA_TLY
  742.  
  743.  
  744. #define MIN_PCT_SCALE_WIDTH 100
  745.  
  746. /* 6 == 6x10, 20 == number of characters to left of pct scales */
  747. /*
  748. 0000000000111111111122222222223333333333444444444455555555556666666666777777777
  749. 0123456789012345678901234567890123456789012345678901234567890123456789012345678
  750.  1  93 100 000 000 uuuuuuuuuuuuuuuuuuuuuuuuuuukkkkkkkkkkkkkkkkkkk
  751.  5  87 100 000 000 uuuuuuuuuuuuukkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
  752. 10  89  45  44   0 uuuuuuuuuuuuuuuuuuuuuukkkkkkkkkkkkkkkkkkkkkk
  753. */
  754. #define DrawArea_MIN_WIDTH    SMALL_BOX_WIDTH
  755.  
  756. /* 6 == 6x10, 29 == number of characters to left of pct scales */
  757. /*
  758. 0000000000111111111122222222223333333333444444444455555555556666666666777777777
  759. 0123456789012345678901234567890123456789012345678901234567890123456789012345678
  760.  Instant %    93  54  39   0 uuuuuuuuuuuuuuuuuuuuuuuuuuukkkkkkkkkkkkkkkkkkk
  761.  5 Sec Avg %  87  26  61   0 uuuuuuuuuuuuukkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
  762. 10 Sec Avg %  89  45  44   0 uuuuuuuuuuuuuuuuuuuuuukkkkkkkkkkkkkkkkkkkkkk
  763. */
  764. #define DrawArea_MIN_HEIGHT    SMALL_BOX_HEIGHT
  765.  
  766.  
  767.  
  768. extern XtAppContext appcon;
  769. extern Widget toplevel;
  770. extern Widget MainWindowW;
  771. extern Widget DrawAreaW;
  772. extern XWindowAttributes DrawAreaXYWH;
  773. extern Display *display;
  774. extern Window window;
  775. extern GC gc;
  776. extern Colormap cmap;
  777. extern int screen;
  778. extern Window root_window;
  779. extern int color_map;
  780.  
  781. extern XColor colorBackground;
  782. extern XColor colorForeground;
  783. extern XColor colorTitleBarFG;
  784. extern XColor colorTitleBarBG;
  785.  
  786. extern XColor colorLabel;
  787. extern XColor colorDisplayMsg;
  788. extern XColor colorUsers;
  789. extern XColor colorTimeOfDay;
  790. extern XColor colorInterval;
  791. extern XColor colorActualInterval;
  792. extern XColor colorActualIntervalAlarm;
  793. extern XColor colorActualIntervalWarning;
  794. extern XColor colorUser;
  795. extern XColor colorKernel;
  796. extern XColor colorBreak;
  797. extern XColor colorIo;
  798. extern XColor colorPio;
  799. extern XColor colorSwap;
  800.  
  801. extern XColor colorNfile;
  802. extern XColor colorNinode;
  803. extern XColor colorNproc;
  804. extern XColor colorNregion;
  805. extern XColor colorNcblocks;
  806.  
  807. extern XColor colorNfileWarning;
  808. extern XColor colorNinodeWarning;
  809. extern XColor colorNprocWarning;
  810. extern XColor colorNregionWarning;
  811. extern XColor colorNcblocksWarning;
  812.  
  813. extern XColor colorNfileAlarm;
  814. extern XColor colorNinodeAlarm;
  815. extern XColor colorNprocAlarm;
  816. extern XColor colorNregionAlarm;
  817. extern XColor colorNcblocksAlarm;
  818.  
  819. extern XColor colorCacheWriteHit;
  820. extern XColor colorCacheReadHit;
  821. extern XColor colorCacheWriteMiss;
  822. extern XColor colorCacheReadMiss;
  823. extern XColor colorCacheWriteMissWarning;
  824. extern XColor colorCacheReadMissWarning;
  825. extern XColor colorCacheWriteMissAlarm;
  826. extern XColor colorCacheReadMissAlarm;
  827.  
  828. extern XColor colorPSmem;
  829. extern XColor colorPSmemGrowing;
  830. extern XColor colorPSmemShrinking;
  831. extern XColor colorPSmemNew;
  832.  
  833. extern XColor colorPScpuIdle;
  834. extern XColor colorPScpuActive;
  835. extern XColor colorPScpuNew;
  836. extern XColor colorPScpuRunning;
  837.  
  838. extern XColor colorPSioIdle;
  839. extern XColor colorPSioActive;
  840. extern XColor colorPSioNew;
  841.  
  842. extern XColor colorDiskspaceGaining;
  843. extern XColor colorDiskspaceLosing;
  844. extern XColor colorDiskspaceStable;
  845.  
  846.  
  847. extern XColor colorAuxButtonOnForeground;
  848. extern XColor colorAuxButtonOnBackground;
  849. extern XColor colorAuxButtonOffForeground;
  850. extern XColor colorAuxButtonOffBackground;
  851.  
  852.  
  853. extern XColor colorNumeric;
  854. extern XColor colorNumericWarning;
  855. extern XColor colorNumericAlarm;
  856. extern XColor colorStaticNumeric;
  857.  
  858. extern XColor colorMemUsed;
  859. extern XColor colorMemUsedWarning;
  860. extern XColor colorMemUsedAlarm;
  861.  
  862. extern XColor colorSwapUsed;
  863. extern XColor colorSwapUsedWarning;
  864. extern XColor colorSwapUsedAlarm;
  865.  
  866. extern XColor colorAvailSwapUsed;
  867. extern XColor colorAvailSwapUsedWarning;
  868. extern XColor colorAvailSwapUsedAlarm;
  869.  
  870.  
  871. extern unsigned long foreground;
  872. extern unsigned long background;
  873.  
  874. extern int redrawing_entire_DrawArea;
  875.  
  876. extern int MyButtons_next_tlx;
  877. extern int DispMsg_tlx;
  878.  
  879.  
  880. #define sysidelta(x) (current_server->my_sysinfo->x - current_server->my_sysinfo_last->x)
  881.  
  882. #define midelta(x) (current_server->my_minfo->x - current_server->my_minfo_last->x)
  883.  
  884.  
  885. extern swpt_t swaptab[];
  886. /*
  887. extern swpi_t swapin;
  888. */
  889. extern struct utsname utsname;
  890.  
  891.  
  892.  
  893. /* vi: set tabstop=4 shiftwidth=4: */
  894. /* end of xsw.h */
  895.